home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1998 November / Freeware November 1998.img / dist / fw_UDELxntp.idb / usr / freeware / src / xntp-3.4o-export / xntpdc / ntpdc.h.z / ntpdc.h
C/C++ Source or Header  |  1998-01-21  |  1KB  |  60 lines

  1. /*
  2.  * ntpdc.h - definitions of interest to xntpdc
  3.  */
  4. #include "ntp_fp.h"
  5. #include "ntp.h"
  6. #include "ntp_request.h"
  7. #include "ntp_string.h"
  8. #include "ntp_malloc.h"
  9.  
  10. /*
  11.  * Maximum number of arguments
  12.  */
  13. #define    MAXARGS    4
  14.  
  15. /*
  16.  * Flags for forming descriptors.
  17.  */
  18. #define    OPT    0x80        /* this argument is optional, or'd with type */
  19.  
  20. #define    NO    0x0
  21. #define    NTP_STR    0x1        /* string argument */
  22. #define    UINT    0x2        /* unsigned integer */
  23. #define    INT    0x3        /* signed integer */
  24. #define    ADD    0x4        /* IP network address */
  25.  
  26. /*
  27.  * Arguments are returned in a union
  28.  */
  29. typedef union {
  30.     char *string;
  31.     long ival;
  32.     u_long uval;
  33.     u_long netnum;
  34. } arg_v;
  35.  
  36. /*
  37.  * Structure for passing parsed command line
  38.  */
  39. struct parse {
  40.     char *keyword;
  41.     arg_v argval[MAXARGS];
  42.     int nargs;
  43. };
  44.  
  45. /*
  46.  * xntpdc includes a command parser which could charitably be called
  47.  * crude.  The following structure is used to define the command
  48.  * syntax.
  49.  */
  50. struct xcmd {
  51.     char *keyword;        /* command key word */
  52.     void (*handler)    P((struct parse *, FILE *));    /* command handler */
  53.     u_char arg[MAXARGS];    /* descriptors for arguments */
  54.     char *desc[MAXARGS];    /* descriptions for arguments */
  55.     char *comment;
  56. };
  57.  
  58. extern    int    doquery    P((int, int, int, int, int, char *, int *, int *, char **, int));
  59. extern    char *    nntohost    P((u_long));
  60.